New function to avoid pointless strdups when creating atoms
from static strings.
- * gdk/x11/gdkdisplay-x11.c:
- * gdk/x11/gdkdnd-x11.c:
- * gdk/x11/gdkevents-x11.c:
- * gdk/x11/gdkmain-x11.c:
- * gdk/x11/gdkproperty-x11.c:
- * gdk/x11/gdkselection-x11.c:
- * gdk/x11/gdkwindow-x11.c: Use gdk_atom_intern_static_string()
- where appropriate.
+ * gdk/x11/*.c:
+ * gtk/*.c: Use gdk_atom_intern_static_string() where
+ appropriate.
2005-09-09 Matthias Clasen <mclasen@redhat.com>
New function to avoid pointless strdups when creating atoms
from static strings.
- * gdk/x11/gdkdisplay-x11.c:
- * gdk/x11/gdkdnd-x11.c:
- * gdk/x11/gdkevents-x11.c:
- * gdk/x11/gdkmain-x11.c:
- * gdk/x11/gdkproperty-x11.c:
- * gdk/x11/gdkselection-x11.c:
- * gdk/x11/gdkwindow-x11.c: Use gdk_atom_intern_static_string()
- where appropriate.
+ * gdk/x11/*.c:
+ * gtk/*.c: Use gdk_atom_intern_static_string() where
+ appropriate.
2005-09-09 Matthias Clasen <mclasen@redhat.com>
* if we asked for compound_text and didn't get it, try string;
* If we asked for anything else and didn't get it, give up.
*/
- if (selection_data->target == gdk_atom_intern ("UTF8_STRING", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("UTF8_STRING"))
{
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("COMPOUND_TEXT", FALSE),
+ gdk_atom_intern_static_string ("COMPOUND_TEXT"),
request_text_received_func, info);
return;
}
- else if (selection_data->target == gdk_atom_intern ("COMPOUND_TEXT", FALSE))
+ else if (selection_data->target == gdk_atom_intern_static_string ("COMPOUND_TEXT"))
{
gtk_clipboard_request_contents (clipboard,
GDK_TARGET_STRING,
info->callback = callback;
info->user_data = user_data;
- gtk_clipboard_request_contents (clipboard, gdk_atom_intern ("UTF8_STRING", FALSE),
+ gtk_clipboard_request_contents (clipboard, gdk_atom_intern_static_string ("UTF8_STRING"),
request_text_received_func,
info);
}
* if we asked for image/gif and didn't get it, try image/bmp;
* If we asked for anything else and didn't get it, give up.
*/
- if (selection_data->target == gdk_atom_intern ("image/png", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("image/png"))
{
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("image/jpeg", FALSE),
+ gdk_atom_intern_static_string ("image/jpeg"),
request_image_received_func, info);
return;
}
- else if (selection_data->target == gdk_atom_intern ("image/jpeg", FALSE))
+ else if (selection_data->target == gdk_atom_intern_static_string ("image/jpeg"))
{
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("image/gif", FALSE),
+ gdk_atom_intern_static_string ("image/gif"),
request_image_received_func, info);
return;
}
- else if (selection_data->target == gdk_atom_intern ("image/gif", FALSE))
+ else if (selection_data->target == gdk_atom_intern_static_string ("image/gif"))
{
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("image/bmp", FALSE),
+ gdk_atom_intern_static_string ("image/bmp"),
request_image_received_func, info);
return;
}
info->user_data = user_data;
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("image/png", FALSE),
+ gdk_atom_intern_static_string ("image/png"),
request_image_received_func,
info);
}
info->callback = callback;
info->user_data = user_data;
- gtk_clipboard_request_contents (clipboard, gdk_atom_intern ("TARGETS", FALSE),
+ gtk_clipboard_request_contents (clipboard, gdk_atom_intern_static_string ("TARGETS"),
request_targets_received_func,
info);
}
GtkSelectionData *data;
gboolean result = FALSE;
- data = gtk_clipboard_wait_for_contents (clipboard, gdk_atom_intern ("TARGETS", FALSE));
+ data = gtk_clipboard_wait_for_contents (clipboard, gdk_atom_intern_static_string ("TARGETS"));
if (data)
{
result = gtk_selection_data_targets_include_text (data);
gboolean result = FALSE;
data = gtk_clipboard_wait_for_contents (clipboard,
- gdk_atom_intern ("TARGETS", FALSE));
+ gdk_atom_intern_static_string ("TARGETS"));
if (data)
{
result = gtk_selection_data_targets_include_image (data, FALSE);
if (targets)
*targets = NULL;
- data = gtk_clipboard_wait_for_contents (clipboard, gdk_atom_intern ("TARGETS", FALSE));
+ data = gtk_clipboard_wait_for_contents (clipboard, gdk_atom_intern_static_string ("TARGETS"));
if (data)
{
GdkEventSelection *event,
GtkClipboard *clipboard)
{
- if (event->selection == gdk_atom_intern ("CLIPBOARD_MANAGER", FALSE) &&
+ if (event->selection == gdk_atom_intern_static_string ("CLIPBOARD_MANAGER") &&
clipboard->storing_selection)
g_main_loop_quit (clipboard->store_loop);
gtk_drag_get_source_widget (context) == widget)
{
GList *list;
- GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+ GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
list = context->targets;
while (list)
if (GTK_CLIST_REORDERABLE (clist))
{
GList *list;
- GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+ GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
list = context->targets;
while (list)
gtk_drag_get_source_widget (context) == widget)
{
GList *list;
- GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+ GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
list = context->targets;
while (list)
if (GTK_CLIST_REORDERABLE (clist) &&
gtk_drag_get_source_widget (context) == widget &&
selection_data->target ==
- gdk_atom_intern ("gtk-clist-drag-reorder", FALSE) &&
+ gdk_atom_intern_static_string ("gtk-clist-drag-reorder") &&
selection_data->format == 8 &&
selection_data->length == sizeof (GtkCListCellInfo))
{
g_return_if_fail (context != NULL);
g_return_if_fail (selection_data != NULL);
- if (selection_data->target ==
- gdk_atom_intern ("gtk-clist-drag-reorder", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("gtk-clist-drag-reorder"))
{
GtkCListCellInfo *info;
vals[3] = priv->has_opacity ? colsrc[COLORSEL_OPACITY] * 0xffff : 0xffff;
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("application/x-color", FALSE),
+ gdk_atom_intern_static_string ("application/x-color"),
16, (guchar *)vals, 8);
}
vals[3] = 0xffff;
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("application/x-color", FALSE),
+ gdk_atom_intern_static_string ("application/x-color"),
16, (guchar *)vals, 8);
}
if (GTK_CLIST_REORDERABLE (clist))
{
GList *list;
- GdkAtom atom = gdk_atom_intern ("gtk-clist-drag-reorder", FALSE);
+ GdkAtom atom = gdk_atom_intern_static_string ("gtk-clist-drag-reorder");
list = context->targets;
while (list)
if (GTK_CLIST_REORDERABLE (clist) &&
gtk_drag_get_source_widget (context) == widget &&
selection_data->target ==
- gdk_atom_intern ("gtk-clist-drag-reorder", FALSE) &&
+ gdk_atom_intern_static_string ("gtk-clist-drag-reorder") &&
selection_data->format == 8 &&
selection_data->length == sizeof (GtkCListCellInfo))
{
if (success && del)
{
- target = gdk_atom_intern ("DELETE", FALSE);
+ target = gdk_atom_intern_static_string ("DELETE");
}
else if (context->protocol == GDK_DRAG_PROTO_MOTIF)
{
- target = gdk_atom_intern (success ?
- "XmTRANSFER_SUCCESS" :
- "XmTRANSFER_FAILURE",
- FALSE);
+ target = gdk_atom_intern_static_string (success ?
+ "XmTRANSFER_SUCCESS" :
+ "XmTRANSFER_FAILURE");
}
if (target != GDK_NONE)
return;
}
- if (selection_data->target == gdk_atom_intern ("DELETE", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("DELETE"))
{
gtk_drag_finish (context, TRUE, FALSE, time);
}
- else if ((selection_data->target == gdk_atom_intern ("XmTRANSFER_SUCCESS", FALSE)) ||
- (selection_data->target == gdk_atom_intern ("XmTRANSFER_FAILURE", FALSE)))
+ else if ((selection_data->target == gdk_atom_intern_static_string ("XmTRANSFER_SUCCESS")) ||
+ (selection_data->target == gdk_atom_intern_static_string ("XmTRANSFER_FAILURE")))
{
/* Do nothing */
}
{
gtk_selection_add_target (info->ipc_widget,
selection,
- gdk_atom_intern ("XmTRANSFER_SUCCESS", FALSE),
+ gdk_atom_intern_static_string ("XmTRANSFER_SUCCESS"),
TARGET_MOTIF_SUCCESS);
gtk_selection_add_target (info->ipc_widget,
selection,
- gdk_atom_intern ("XmTRANSFER_FAILURE", FALSE),
+ gdk_atom_intern_static_string ("XmTRANSFER_FAILURE"),
TARGET_MOTIF_FAILURE);
}
gtk_selection_add_target (info->ipc_widget,
selection,
- gdk_atom_intern ("DELETE", FALSE),
+ gdk_atom_intern_static_string ("DELETE"),
TARGET_DELETE);
}
/* GTK+ traditionally has used application/x-rootwin-drop, but the
* XDND spec specifies x-rootwindow-drop.
*/
- GdkAtom target1 = gdk_atom_intern ("application/x-rootwindow-drop", FALSE);
- GdkAtom target2 = gdk_atom_intern ("application/x-rootwin-drop", FALSE);
+ GdkAtom target1 = gdk_atom_intern_static_string ("application/x-rootwindow-drop");
+ GdkAtom target2 = gdk_atom_intern_static_string ("application/x-rootwin-drop");
tmp_list = info->target_list->list;
while (tmp_list)
guint target_info;
if (!null_atom)
- null_atom = gdk_atom_intern ("NULL", FALSE);
+ null_atom = gdk_atom_intern_static_string ("NULL");
switch (sel_info)
{
}
gtk_clipboard_request_contents (gtk_widget_get_clipboard (GTK_WIDGET (entry), GDK_SELECTION_CLIPBOARD),
- gdk_atom_intern ("TARGETS", FALSE),
+ gdk_atom_intern_static_string ("TARGETS"),
popup_targets_received,
info);
}
g_assert (position >= bookmarks_index);
position -= bookmarks_index;
- if (selection_data->target == gdk_atom_intern ("text/uri-list", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("text/uri-list"))
shortcuts_drop_uris (impl, selection_data->data, position);
- else if (selection_data->target == gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ else if (selection_data->target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
shortcuts_reorder (impl, position);
g_signal_stop_emission_by_name (widget, "drag-data-received");
uris = g_strconcat (uri, "\r\n", NULL);
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("text/uri-list", FALSE),
+ gdk_atom_intern_static_string ("text/uri-list"),
8,
uris,
strlen (uris) + 1);
int i;
if (!atom_iconthemes)
- atom_iconthemes = gdk_atom_intern ("_GTK_LOAD_ICONTHEMES", FALSE);
+ atom_iconthemes = gdk_atom_intern_static_string ("_GTK_LOAD_ICONTHEMES");
for (i = 0; i < 5; i++)
event->client.data.l[i] = 0;
goto done;
/* If drag_data_get does nothing, try providing row data. */
- if (selection_data->target == gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
gtk_tree_set_row_drag_data (selection_data,
model,
source_row);
g_timeout_add (50, drag_scroll_timeout, icon_view);
}
- if (target == gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
{
/* Request data so we can use the source row when
* determining whether to accept the drop
* for text and didn't get it, try string. If we asked for
* anything else and didn't get it, give up.
*/
- if (selection_data->target == gdk_atom_intern ("UTF8_STRING", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("UTF8_STRING"))
{
gtk_selection_convert (widget, GDK_SELECTION_PRIMARY,
- gdk_atom_intern ("TEXT", FALSE),
+ gdk_atom_intern_static_string ("TEXT"),
time);
return;
}
- else if (selection_data->target == gdk_atom_intern ("TEXT", FALSE))
+ else if (selection_data->target == gdk_atom_intern_static_string ("TEXT"))
{
gtk_selection_convert (widget, GDK_SELECTION_PRIMARY,
GDK_TARGET_STRING,
if (!utf8_atom)
{
- utf8_atom = gdk_atom_intern ("UTF8_STRING", FALSE);
- text_atom = gdk_atom_intern ("TEXT", FALSE);
- ctext_atom = gdk_atom_intern ("COMPOUND_TEXT", FALSE);
- text_plain_atom = gdk_atom_intern ("text/plain", FALSE);
- text_plain_utf8_atom = gdk_atom_intern ("text/plain;charset=utf-8", FALSE);
+ utf8_atom = gdk_atom_intern_static_string ("UTF8_STRING");
+ text_atom = gdk_atom_intern_static_string ("TEXT");
+ ctext_atom = gdk_atom_intern_static_string ("COMPOUND_TEXT");
+ text_plain_atom = gdk_atom_intern_static_string ("text/plain");
+ text_plain_utf8_atom = gdk_atom_intern_static_string ("text/plain;charset=utf-8");
g_get_charset (&charset);
tmp = g_strdup_printf ("text/plain;charset=%s", charset);
text_plain_locale_atom = gdk_atom_intern (tmp, FALSE);
g_free (tmp);
- text_uri_list_atom = gdk_atom_intern ("text/uri-list", FALSE);
+ text_uri_list_atom = gdk_atom_intern_static_string ("text/uri-list");
}
}
static void
gtk_selection_init (void)
{
- gtk_selection_atoms[INCR] = gdk_atom_intern ("INCR", FALSE);
- gtk_selection_atoms[MULTIPLE] = gdk_atom_intern ("MULTIPLE", FALSE);
- gtk_selection_atoms[TIMESTAMP] = gdk_atom_intern ("TIMESTAMP", FALSE);
- gtk_selection_atoms[TARGETS] = gdk_atom_intern ("TARGETS", FALSE);
+ gtk_selection_atoms[INCR] = gdk_atom_intern_static_string ("INCR");
+ gtk_selection_atoms[MULTIPLE] = gdk_atom_intern_static_string ("MULTIPLE");
+ gtk_selection_atoms[TIMESTAMP] = gdk_atom_intern_static_string ("TIMESTAMP");
+ gtk_selection_atoms[TARGETS] = gdk_atom_intern_static_string ("TARGETS");
initialize = FALSE;
}
*/
#ifdef GDK_WINDOWING_X11
if (type != GDK_SELECTION_TYPE_ATOM &&
- type != gdk_atom_intern ("ATOM_PAIR", FALSE))
+ type != gdk_atom_intern_static_string ("ATOM_PAIR"))
{
info->num_conversions = length / (2*sizeof (glong));
info->conversions = g_new (GtkIncrConversion, info->num_conversions);
}
gdk_property_change (info->requestor, event->property,
- gdk_atom_intern ("ATOM_PAIR", FALSE), 32,
+ gdk_atom_intern_static_string ("ATOM_PAIR"), 32,
GDK_PROP_MODE_REPLACE,
(guchar *)mult_atoms, 2*info->num_conversions);
g_free (mult_atoms);
#if defined(GDK_WINDOWING_WIN32) || defined(GDK_WINDOWING_X11)
if ((event->state != GDK_PROPERTY_NEW_VALUE) || /* property was deleted */
- (event->atom != gdk_atom_intern ("GDK_SELECTION", FALSE))) /* not the right property */
+ (event->atom != gdk_atom_intern_static_string ("GDK_SELECTION"))) /* not the right property */
#endif
return FALSE;
}
gtk_selection_convert (widget, GDK_SELECTION_PRIMARY,
- gdk_atom_intern ("UTF8_STRING", FALSE),
+ gdk_atom_intern_static_string ("UTF8_STRING"),
event->time);
}
else
if (gtk_text_buffer_get_selection_bounds (buffer, &start, &end))
{
if (selection_data->target ==
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE))
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"))
{
/* Provide the address of the buffer; this will only be
* used within-process
*/
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE),
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"),
8, /* bytes */
(void*)&buffer,
sizeof (buffer));
g_assert (contents); /* This should never be called unless we own the clipboard */
if (selection_data->target ==
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE))
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"))
{
/* Provide the address of the clipboard buffer; this will only
* be used within-process. OK to supply a NULL value for contents.
*/
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE),
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"),
8, /* bytes */
(void*)&contents,
sizeof (contents));
if (gdk_window_get_window_type (owner) == GDK_WINDOW_FOREIGN)
return NULL;
- if (selection_data->type != gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE))
+ if (selection_data->type != gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"))
return NULL;
if (selection_data->length != sizeof (src_buffer))
data->replace_selection = TRUE;
gtk_clipboard_request_contents (clipboard,
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE),
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"),
clipboard_clipboard_buffer_received, data);
}
text_view = GTK_TEXT_VIEW (widget);
- if (selection_data->target == gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"))
{
GtkTextBuffer *buffer = gtk_text_view_get_buffer (text_view);
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE),
+ gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"),
8, /* bytes */
(void*)&buffer,
sizeof (buffer));
gtk_text_buffer_begin_user_action (buffer);
- if (selection_data->target == gdk_atom_intern ("GTK_TEXT_BUFFER_CONTENTS", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("GTK_TEXT_BUFFER_CONTENTS"))
{
GtkTextBuffer *src_buffer = NULL;
GtkTextIter start, end;
gtk_clipboard_request_contents (gtk_widget_get_clipboard (GTK_WIDGET (text_view),
GDK_SELECTION_CLIPBOARD),
- gdk_atom_intern ("TARGETS", FALSE),
+ gdk_atom_intern_static_string ("TARGETS"),
popup_targets_received,
info);
}
g_return_val_if_fail (GTK_IS_TREE_MODEL (tree_model), FALSE);
g_return_val_if_fail (path != NULL, FALSE);
- if (selection_data->target != gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (selection_data->target != gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
return FALSE;
path_str = gtk_tree_path_to_string (path);
trd->model = tree_model;
gtk_selection_data_set (selection_data,
- gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE),
+ gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"),
8, /* bytes */
(void*)trd,
struct_size);
if (path)
*path = NULL;
- if (selection_data->target != gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (selection_data->target != gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
return FALSE;
if (selection_data->length < 0)
goto done;
/* If drag_data_get does nothing, try providing row data. */
- if (selection_data->target == gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (selection_data->target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
{
gtk_tree_set_row_drag_data (selection_data,
model,
g_timeout_add (150, scroll_row_timeout, tree_view);
}
- if (target == gdk_atom_intern ("GTK_TREE_MODEL_ROW", FALSE))
+ if (target == gdk_atom_intern_static_string ("GTK_TREE_MODEL_ROW"))
{
/* Request data so we can use the source row when
* determining whether to accept the drop
{
if (GTK_WIDGET_REALIZED (window))
gdk_property_delete (window->window,
- gdk_atom_intern ("WM_TRANSIENT_FOR", FALSE));
+ gdk_atom_intern_static_string ("WM_TRANSIENT_FOR"));
}
static void
{
if (!atom_rcfiles)
{
- atom_rcfiles = gdk_atom_intern ("_GTK_READ_RCFILES", FALSE);
- atom_iconthemes = gdk_atom_intern ("_GTK_LOAD_ICONTHEMES", FALSE);
+ atom_rcfiles = gdk_atom_intern_static_string ("_GTK_READ_RCFILES");
+ atom_iconthemes = gdk_atom_intern_static_string ("_GTK_LOAD_ICONTHEMES");
}
if (event->message_type == atom_rcfiles)